package org.ch02.hw.demo02;

import org.ch02.entity.Student;

import java.lang.reflect.Constructor;
import java.lang.reflect.Member;
import java.lang.reflect.Method;

/**
 * @author ZJL
 * @date 2025-03-17
 */
public class MainTest01 {
    public static void main(String[] args) throws Exception {
//        二、通过反射获取类的构造方法，如下所示：
//                  public Student(String name, int age, Double weight)
//
//        使用反射实例化此类的对象，调用 show 方法，
//        show 方法把构造方法的四个信息打印输出。

        Class<Student> clazz = Student.class;
        Constructor<Student> constructor = clazz.getConstructor(String.class,int.class,Double.class);
        Student student = constructor.newInstance("张三",18,200D);
        Method show = clazz.getMethod("show");
        show.invoke(student);
    }
}
